package com.tju.resource.model;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

import java.io.Serializable;
import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import javax.validation.constraints.NotNull;

/**
 * 施工单表
 *
 * @TableName tb_impl_order
 */
@TableName(value = "tb_impl_order")
@Data
public class TbImplOrder implements Serializable {
    /**
     * 施工单ID
     */
    @TableId(type = IdType.AUTO)
    private Long id;

    /**
     * 机台号
     */
    @NotNull(message = "请选择机台号!")
    private String mechNo;
    /**
     * 生产计划id
     */
    private Long ppId;
    /**
     * 颜色编号
     */
    private String color;

    /**
     * 单啤额定(S)
     */
    private String unitRated;

    /**
     * 啤数
     */
    private String rated;

    /**
     * 穴数
     */
    private String holes;

    /**
     * 开始时间
     */
    //@JsonFormat(pattern = "yyyy-MM-dd hh:mm:ss")
    private String onTime;

    /**
     * 结束时间
     */
    //@JsonFormat(pattern = "yyyy-MM-dd hh:mm:ss")
    private String endTime;

    /**
     * 使用工时
     */
    @NotNull(message = "请输入使用工时!")
    private Long useHours;

    /**
     * 良品数量
     */
    @NotNull(message = "请输入良品数量!")
    private Long quality;

    /**
     * 返修数量
     */
    private Long backFix;

    /**
     * 报废数量
     */
    private Long scrap;

    /**
     * 报废原因
     */
    private String scrapRea;

    /**
     * 交接班数量
     */
    private Long swapQty;

    /**
     * 作业内容
     */
    @NotNull(message = "请输入作业内容!")
    private String workTodo;

    /**
     * 生产公式
     */
    private String prodFormual;

    /**
     * 备注
     */
    private String remark;

    /**
     * 领班审核
     */
    private String leader;
    /**
     * 领班审核状态(0:未审核1:已审核)
     */
    private int leaderStatus;
    /**
     * 领班审核时间
     */
    private Date leaderTime;
    /**
     * 审核人
     */
    private String appBy;
    /**
     * 审核状态(0:未审核1:领班审核,2:二审,3:三审)
     */
    private int appStatus;
    /**
     * 审核时间
     */
    private Date appTime;
    /**
     * 创建者
     */
    private String createBy;

    /**
     * 生产日期
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date createTime;

    /**
     * 更新者
     */
    private String updateBy;

    /**
     * 更新时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date updateTime;

}